package com.ruoyi.api.system.domain;

import java.io.Serializable;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import com.ruoyi.common.annotation.Excel;

import javax.validation.constraints.NotBlank;

/**
 * 行政区字典对象 sys_region
 * 
 * @author ruoyi
 * @date 2021-08-19
 */
@Data
@NoArgsConstructor
@Accessors(chain = true)
@TableName("sys_region")
public class SysRegion implements Serializable
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    @TableId(type = IdType.AUTO)
    private Long regionId;

    /** 编码 */
    @NotBlank(message = "编码不能为空")
    @Excel(name = "编码")
    private String regionCode;

    /** 名称 */
    @NotBlank(message = "名称不能为空")
    @Excel(name = "名称")
    private String regionName;

    /** 父级ID */
    @NotBlank(message = "父级ID不能为空")
    @Excel(name = "父级ID")
    private Long parentId;

    /** 经度 */
    @Excel(name = "经度")
    private float lng;

    /** 纬度 */
    @Excel(name = "纬度")
    private float lat;

    /** 层级 0省、直辖市、港澳台 1市 2县/区 3镇 4村 */
    @NotBlank(message = "层级不能为空")
    @Excel(name = "层级", readConverterExp = "0省、直辖市、港澳台 1市 2县/区 3镇 4村" )
    private Integer regionLevel;

    /** 排序序号 */
    @NotBlank(message = "排序序号不能为空")
    @Excel(name = "排序序号")
    private Integer orderNum;

    /** 父级名称 */
    @TableField(exist = false)
    private String parentName;

}
